<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
   
    <div id="app">
        <div>
            <label>Id:
                <input type="text" v-model="id">
            </label>

            <label>Name:
                <input type="text" v-model="name">
            </label>

            <input type="button" value="添加" @click="add">
        </div>

        <div>
                <label>Id:
                    <input type="text" v-model="id">
                </label>
    
                <label>Name:
                    <input type="text" v-model="name">
                </label>
    
                <input type="button" value="第一行添加" @click="addOne">
            </div>

            <!-- 注意v-for循环中，key属性值只能使用number获取string -->
            <!-- 注意key在使用的时候，必须使用v-bind属性绑定的形式指定key的值 -->
            <!-- 在组件中，使用v-for循环的时候，或者在一些特殊情况中，如果v-for有问题
            ，必须在使用v-for的同时，指定唯一的字符串/数字类型 :key值 -->
        <p v-for="item in list" :key="item.id">
            <input type="checkbox">
            {{item.id}}-----{{item.name}}
        </p>
    </div>

    <script>
        var vm = new Vue({
            el: '#app',
            data: {
                id: '',
                name: '',
                list: [
                    {id:1,name: '锐雯'},
                    {id:2,name: '菲奥娜'},
                    {id:3,name: '贾克斯'},
                    {id:4,name: '德莱厄斯'},
                    {id:5,name: '德莱文'}
                ]
            },
            methods: {
                add(){
                    this.list.push({id: this.id,name: this.name})
                },
                addOne(){
                    this.list.unshift({id: this.id,name: this.name})
                }
            }
        })
    </script>
</body>
</html>